import { DataTypes } from 'sequelize'
import { sequelize } from '../../BaseDao'

class Userinfo {
  static createModel() {
    const userModel = sequelize.define(
      'userinfo',
      {
        userid: {
          type: DataTypes.INTEGER,
          field: 'userid',
          primaryKey: true,
          autoIncrement: true
        },
        username: {
          type: DataTypes.STRING(30),
          field: 'username',
          allowNull: false
        },
        psw: {
          type: DataTypes.STRING(20),
          field: 'psw',
          allowNull: false
        },
        address: {
          type: DataTypes.STRING(100),
          field: 'address',
          allowNull: true
        },
        valid: {
          type: DataTypes.TINYINT,
          field: 'valid',
          allowNull: true,
          defaultValue: 1
        }
      },
      {
        timestamps: false // true 表示给模型加上时间戳属性（createAt， updateAt） false 表示不带时间戳属性
        // freezeTableName: true //true 表示使用给定表名, false 表示模型名后加s作为表名
      }
    )
    // 同步数据库，force为true表示若存在则先删除后创建，为false表示不存在则创建
    // userModel.sync({ force: false })
    return userModel
  }
}

export const model = Userinfo.createModel()
